
#ifndef __OPERATION_H__
#define __OPERATION_H__

#include <iostream>

class Operation
{
public:
    virtual double GetResult(double x, double y) = 0;
};

class OperationAdd: public Operation
{
public:
    double GetResult(double x, double y);
};

class OperationSub: public Operation
{
public:
    double GetResult(double x, double y);
};

class OperationMul: public Operation
{
public:
    double GetResult(double x, double y);
};

class OperationDiv: public Operation
{
public:
    double GetResult(double x, double y);
};

#endif